データ例

5つの地域のCRIMEの値が欠損のデータを作成。

library(maptools)
map <- readShapePoly(system.file("etc/shapes/columbus.shp",package="spdep")[1])
map@data$CRIME[1:5] <- NA

属性値が欠損の地域は、色なしとなってしまう。

brks <- quantile(map@data$CRIME,probs=0:5/5,na.rm=TRUE)
brks[length(brks)] <- brks[length(brks)]+abs(brks[length(brks)])*0.01
K <- length(brks)
spplot(map,zcol="CRIME",at=brks,
       col.regions=topo.colors(K-1))

欠損地域の色をぬる

latticeExtraパッケージのlayer_関数を用いて、欠損地域を黒色で塗る。

library(latticeExtra)
brks <- quantile(map@data$CRIME,probs=0:5/5,na.rm=TRUE)
brks[length(brks)] <- brks[length(brks)]+abs(brks[length(brks)])*0.01
K <- length(brks)
spplot(map,zcol="CRIME",at=brks,
       col.regions=topo.colors(K-1)) + layer_(sp.polygons(map,fill="black"))